A-FCM配置

一、FCM 配置

若 APP 需要接入 Google 提供的 FCM 离线推送功能,需要在管理台配置相应的应用及 Server API key 以启用该功能。

1、获取 Server API key

获取 Server API key 要求需要使用 Google 账号在 Google 申请到 API key。请参考以下步骤处理:

  • 访问 FCM 控制台 ,选择【添加项目】,创建一个新项目(若已有项目则请跳过此步骤)并进入项目中。

img

  • 在项目中选择【添加应用】,根据指引创建应用并集成 FCM 以使用 Google 服务(若已有应用则请跳过此步骤)

img

img

  • 进入项目中,选择【云消息传递】页面,该页面下有【旧版服务器密钥】,该密钥即为需要获取的 Server API key

img

img

  • 进入云消息控制台,可以【新增通知】并测试通知功能

img

注:

  1. FCM 在 Android 项目中集成时,请参考官方 FCM 集成文档,仅需要添加 FCM 库依赖即可,创建应用时官方给出的集成文档中需要添加的 FCM-Core 核心库其实并不需要
//添加FCM库依赖
implementation 'com.google.firebase:firebase-messaging:xxx'
//创建应用时提示需要添加此核心库,实际上不需要添加这个依赖,仅需要上面的依赖就即可使用FCM功能
//implementation 'com.google.firebase:firebase-core:xxx'

2、配置管理台 Server API key

在获取到 Server API key 后,需要在物联云平台企业管理台配置相应的应用以支持推送功能。

  1. 登录企业管理台
  2. 选择【开发平台】->【应用网关】->【新建应用】,创建一个应用(若已存在应用可跳过此步骤)
  3. 进入需要配置的应用,选择【启用】开启应用,在【应用配置】中将以上获取的密钥填写入【Server API Key】,并勾选【消息通知-启用 GooglePlay 服务】,然后【保存】

通过以上操作即可完成管理台的应用配置。由于 Google API key 是可以限制使用范围,若不确定配置后的 API 是否可用,可以尝试以下命令验证(建议在无法接收到推送时验证),通过以上方式创建的应用默认情况下 Server API key 为无限制。

在移动设备上执行以下命令,部分国内手机可能不支持。

//配置api_key变量
api_key=此处为需要验证的 Server API key
//请求验证API key是否有效
curl --header "Authorization:key=$api_key" --header Content-Type:"application/json" https://fcm.googleapis.com/fcm/send -d "{\"registration_ids\":[\"此处为设备的token\"]}"

**
**

3、绑定移动端设备及应用

由于推送是针对应用进行的,所以每个移动端设备(手机或 Pad 等)都需要通过 Google 的服务获取到设备的唯一 token,并且使用该 token 与管理台创建的应用进行绑定。

  1. 在应用配置界面,获取【应用ID】一栏的数据
  2. 确保移动端设备登录 Google 账号并能正确地连接到 Google 服务器(若有 GooglePlay 商店,商店登录 Google 账号即可)
  3. 在 APP 中通过 Google SDK 获取设备的 token,详情请参考官方文档及官方 demo
  4. 将获取的设备的 token 与从管理台中获取的应用ID通过 Restful 接口绑定
int userId = XLinkUserManager.getInstance().getUid();
PushApi.RegisterRequest request = new PushApi.RegisterRequest();
request.appId = appId;
request.deviceToken = token;
//调用SDK中的Restful接口进行绑定,也可以自行实现应用接口绑定
XLinkRestful.getApplicationApi().userRegisterGcm(userId, request)
        .enqueue(new XLinkCallback<String>() {
            @Override
            public void onHttpError(Throwable throwable) {
                //绑定失败
            }
            @Override
            public void onApiError(XLinkRestfulError.ErrorWrapper.Error error) {
                //绑定失败
            }
            @Override
            public void onSuccess(String s) {
                //绑定成功
            }
        });

通过以上操作即可完成 FCM 的配置工作

4、注意事项

  1. 管理台提供的推送功能是针对应用的,即必须有创建了应用并且应用配置了有效地 Server API key,设备与该应用绑定的情况下该设备才能接收到推送的消息;
  2. 推送时需要指定应用,如果未指定应用则无法通过 FCM 获取到相应的推送消息
没找到需要的文档?
你可以提交工单反馈 或 阅读常见问题